package arithmetic.movezeroes;

import java.util.Arrays;

/**
 * 给定一个数组nums,编写一个函数将所有0移动到数组的末尾，同时保证非零原始的相对顺序
 * 说明：
 *  1、必须在原数组上操作，不能拷贝额外的数组。
 *  2、尽量减少操作次数。
 */
public class Test {

    public static void main(String[] args) {
       int[] nums={0,1,0,3,12,23,5,9,0,99};
       move(nums);
    }

    public static void move(int[] nums){
        int j=0;
        for (int i=0;i<nums.length;i++){
            if(nums[i]!=0){
                nums[j++]=nums[i];
            }
        }
        for (int i=j;i<nums.length;i++){
            nums[i]=0;
        }
        System.out.println(Arrays.toString(nums));
    }
}
